x86emul: CMPXCHG{8,16}B are memory writes
authorJan Beulich <jbeulich@suse.com>
Fri, 20 Jan 2017 13:36:58 +0000 (14:36 +0100)
committerJan Beulich <jbeulich@suse.com>
Fri, 20 Jan 2017 13:36:58 +0000 (14:36 +0100)
commit045094933dc7ca7a4a35b2ebd582f6ed226684da
tree85b8f4f0a4c7d407c29c79d8e3cfdae8721b7856
parentb44c43e42ab7ececf8b5a33e858d5cc9aed44ae1
x86emul: CMPXCHG{8,16}B are memory writes

This fixes a regression introduced by commit ff913f68c9 ("x86/PV:
restrict permitted instructions during memory write emulation")
breaking namely 32-bit PV guests (which commonly use CMPXCHG8B for
certain page table updates).

Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
xen/arch/x86/x86_emulate/x86_emulate.c